MCU 的最小系统理论

#CyberUnit

从第一性原理出发理解 MCU 最小系统,不仅是对系统设计的回归与澄清,更是构建稳定软件架构的第一步。理解这些基础,有助于我们站在更高的视角设计系统,排查问题,以及持续优化性能。

抛开各种复杂的外围电路,MCU 的硬件最小系统主要包含 MCU、电源、时钟。MCU 作为最小系统的核心,需要提供电源才能工作这很容理解。时钟,也就是晶振,相当于芯片的心脏,为其提供持续稳定的节拍信号。这个最小系统也是冯·诺依曼模型的一个现实化简版本。

基于硬件最小系统,我们就可以知道,MCU 的软件最小系统需要考虑的是如何将 MCU、电源和时钟驱动起来。这里我们不考虑复杂的电源管理,所以可以认为软件不需要对电源部分做处理。时钟的部分主要就是对时钟树进行相应的处理,各种分频倍频来为不同的外设提供不同的时钟频率。MCU 的软件部分主要是要考虑将硬件初始化及构建 C 语言的运行环境。

不管如何复杂的硬件和软件系统,都是从这个最小的系统开始搭建,逐渐生长为一个复杂的系统。把握了这两个关键的脉络便可让我们在调试过程中如鱼得水。